_OP_DEF(opexe_0, "load",												1,  1,			TST_STRING,							OP_LOAD)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_T0LVL)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_EVAL_INTERNAL)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_READ_INTERNAL)
_OP_DEF(opexe_0, "gensym",										0,  0,			0,											OP_GENSYM)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_VALUEPRINT)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_EVAL)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_REAL_EVAL)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_E0ARGS)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_E1ARGS)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_APPLY)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_REAL_APPLY)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_DOMACRO)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_LAMBDA)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_LAMBDA1)
_OP_DEF(opexe_0, "make-closure",								1,  2,			TST_PAIR TST_ENVIRONMENT,OP_MKCLOSURE)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_QUOTE)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_DEF0)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_DEF1)
_OP_DEF(opexe_0, "defined?",										1,  2,			TST_SYMBOL TST_ENVIRONMENT,OP_DEFP)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_BEGIN)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_IF0)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_IF1)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_SET0)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_SET1)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_LET0)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_LET1)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_LET2)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_LETSTAR0)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_LETSTAR1)
_OP_DEF(opexe_0, 0,														0,  0,			0,											OP_LETSTAR2)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_LET0REC)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_LET1REC)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_LET2REC)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_COND0)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_COND1)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_DELAY)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_AND0)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_AND1)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_OR0)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_OR1)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_C0STREAM)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_C1STREAM)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_MACRO0)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_MACRO1)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_CASE0)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_CASE1)
_OP_DEF(opexe_1, 0,														0,  0,			0,											OP_CASE2)
_OP_DEF(opexe_1, "eval",												1,  2,			TST_ANY TST_ENVIRONMENT,OP_PEVAL)
_OP_DEF(opexe_1, "apply",											1,  0xFFFF, TST_NONE,					OP_PAPPLY)
_OP_DEF(opexe_1, "call-with-current-continuation", 		1,  1,			TST_NONE,							OP_CONTINUATION)
_OP_DEF(opexe_2, "inexact->exact",								1,  1,			TST_NUMBER,						OP_INEX2EX)
_OP_DEF(opexe_2, "exp",												1,  1,			TST_NUMBER,						OP_EXP)
_OP_DEF(opexe_2, "log",												1,  1,			TST_NUMBER,						OP_LOG)
_OP_DEF(opexe_2, "sin",												1,  1,			TST_NUMBER,						OP_SIN)
_OP_DEF(opexe_2, "cos",												1,  1,			TST_NUMBER,						OP_COS)
_OP_DEF(opexe_2, "tan",												1,  1,			TST_NUMBER,						OP_TAN)
_OP_DEF(opexe_2, "asin",												1,  1,			TST_NUMBER,						OP_ASIN)
_OP_DEF(opexe_2, "acos",												1,  1,			TST_NUMBER,						OP_ACOS)
_OP_DEF(opexe_2, "atan",												1,  2,			TST_NUMBER,						OP_ATAN)
_OP_DEF(opexe_2, "sqrt",												1,  1,			TST_NUMBER,						OP_SQRT)
_OP_DEF(opexe_2, "expt",												2,  2,			TST_NUMBER,						OP_EXPT)
_OP_DEF(opexe_2, "floor",												1,  1,			TST_NUMBER,						OP_FLOOR)
_OP_DEF(opexe_2, "ceiling",											1,  1,			TST_NUMBER,						OP_CEILING)
_OP_DEF(opexe_2, "truncate",										1,  1,			TST_NUMBER,						OP_TRUNCATE)
_OP_DEF(opexe_2, "round",											1,  1,			TST_NUMBER,						OP_ROUND)
_OP_DEF(opexe_2, "+",													0,  0xFFFF, TST_NUMBER,				OP_ADD)
_OP_DEF(opexe_2, "-",													1,  0xFFFF, TST_NUMBER,				OP_SUB)
_OP_DEF(opexe_2, "*",													0,  0xFFFF, TST_NUMBER,				OP_MUL)
_OP_DEF(opexe_2, "/",													1,  0xFFFF, TST_NUMBER,				OP_DIV)
_OP_DEF(opexe_2, "quotient",										1,  0xFFFF, TST_INTEGER,				OP_INTDIV)
_OP_DEF(opexe_2, "remainder",										2,  2,			TST_INTEGER,						OP_REM)
_OP_DEF(opexe_2, "modulo",										2,  2,			TST_INTEGER,						OP_MOD)
_OP_DEF(opexe_2, "car",												1,  1,			TST_PAIR,								OP_CAR)
_OP_DEF(opexe_2, "cdr",												1,  1,			TST_PAIR,								OP_CDR)
_OP_DEF(opexe_2, "cons",												2,  2,			TST_NONE,							OP_CONS)
_OP_DEF(opexe_2, "set-car!",											2,  2,			TST_PAIR TST_ANY,				OP_SETCAR)
_OP_DEF(opexe_2, "set-cdr!",											2,  2,			TST_PAIR TST_ANY,				OP_SETCDR)
_OP_DEF(opexe_2, "char->integer",								1,  1,			TST_CHAR,							OP_CHAR2INT)
_OP_DEF(opexe_2, "integer->char",								1,  1,			TST_NATURAL,						OP_INT2CHAR)
_OP_DEF(opexe_2, "char-upcase",									1,  1,			TST_CHAR,							OP_CHARUPCASE)
_OP_DEF(opexe_2, "char-downcase",								1,  1,			TST_CHAR,							OP_CHARDNCASE)
_OP_DEF(opexe_2, "symbol->string",								1,  1,			TST_SYMBOL,						OP_SYM2STR)
_OP_DEF(opexe_2, "atom->string",								1,  2,			TST_ANY TST_NATURAL,		OP_ATOM2STR)
_OP_DEF(opexe_2, "string->symbol",								1,  1,			TST_STRING,							OP_STR2SYM)
_OP_DEF(opexe_2, "string->atom",								1,  2,			TST_STRING TST_NATURAL,	OP_STR2ATOM)
_OP_DEF(opexe_2, "make-string",									1,  2,			TST_NATURAL TST_CHAR,		OP_MKSTRING)
_OP_DEF(opexe_2, "string-length",								1,  1,			TST_STRING,							OP_STRLEN)
_OP_DEF(opexe_2, "string-ref",										2,  2,			TST_STRING TST_NATURAL,	OP_STRREF)
_OP_DEF(opexe_2, "string-set!",										3,  3,			TST_STRING TST_NATURAL TST_CHAR,OP_STRSET)
_OP_DEF(opexe_2, "string-append",								0,  0xFFFF, TST_STRING,					OP_STRAPPEND)
_OP_DEF(opexe_2, "substring",										2,  3,			TST_STRING TST_NATURAL,	OP_SUBSTR)
_OP_DEF(opexe_2, "vector",											0,  0xFFFF, TST_NONE,					OP_VECTOR)
_OP_DEF(opexe_2, "make-vector",									1,  2,			TST_NATURAL TST_ANY,		OP_MKVECTOR)
_OP_DEF(opexe_2, "vector-length",								1,  1,			TST_VECTOR,						OP_VECLEN)
_OP_DEF(opexe_2, "vector-ref",										2,  2,			TST_VECTOR TST_NATURAL,	OP_VECREF)
_OP_DEF(opexe_2, "vector-set!",									3,  3,			TST_VECTOR TST_NATURAL TST_ANY,OP_VECSET)
_OP_DEF(opexe_3, "not",												1,  1,			TST_NONE,							OP_NOT)
_OP_DEF(opexe_3, "boolean?",										1,  1,			TST_NONE,							OP_BOOLP)
_OP_DEF(opexe_3, "eof-object?",									1,  1,			TST_NONE,							OP_EOFOBJP)
_OP_DEF(opexe_3, "null?",												1,  1,			TST_NONE,							OP_NULLP)
_OP_DEF(opexe_3, "=",													2,  0xFFFF, TST_NUMBER,				OP_NUMEQ)
_OP_DEF(opexe_3, "<",													2,  0xFFFF, TST_NUMBER,				OP_LESS)
_OP_DEF(opexe_3, ">",													2,  0xFFFF, TST_NUMBER,				OP_GRE)
_OP_DEF(opexe_3, "<=",												2,  0xFFFF, TST_NUMBER,				OP_LEQ)
_OP_DEF(opexe_3, ">=",												2,  0xFFFF, TST_NUMBER,				OP_GEQ)
_OP_DEF(opexe_3, "symbol?",										1,  1,			TST_ANY,								OP_SYMBOLP)
_OP_DEF(opexe_3, "number?",										1,  1,			TST_ANY,								OP_NUMBERP)
_OP_DEF(opexe_3, "string?",											1,  1,			TST_ANY,								OP_STRINGP)
_OP_DEF(opexe_3, "integer?",										1,  1,			TST_ANY,								OP_INTEGERP)
_OP_DEF(opexe_3, "real?",												1,  1,			TST_ANY,								OP_REALP)
_OP_DEF(opexe_3, "char?",											1,  1,			TST_ANY,								OP_CHARP)
_OP_DEF(opexe_3, "char-alphabetic?",							1,  1,			TST_CHAR,							OP_CHARAP)
_OP_DEF(opexe_3, "char-numeric?",								1,  1,			TST_CHAR,							OP_CHARNP)
_OP_DEF(opexe_3, "char-whitespace?",							1,  1,			TST_CHAR,							OP_CHARWP)
_OP_DEF(opexe_3, "char-upper-case?",							1,  1,			TST_CHAR,							OP_CHARUP)
_OP_DEF(opexe_3, "char-lower-case?",							1,  1,			TST_CHAR,							OP_CHARLP)
_OP_DEF(opexe_3, "port?",											1,  1,			TST_ANY,								OP_PORTP)
_OP_DEF(opexe_3, "input-port?",									1,  1,			TST_ANY,								OP_INPORTP)
_OP_DEF(opexe_3, "output-port?",								1,  1,			TST_ANY,								OP_OUTPORTP)
_OP_DEF(opexe_3, "procedure?",									1,  1,			TST_ANY,								OP_PROCP)
_OP_DEF(opexe_3, "pair?",												1,  1,			TST_ANY,								OP_PAIRP)
_OP_DEF(opexe_3, "list?",												1,  1,			TST_ANY,								OP_LISTP)
_OP_DEF(opexe_3, "environment?",								1,  1,			TST_ANY,								OP_ENVP)
_OP_DEF(opexe_3, "vector?",											1,  1,			TST_ANY,								OP_VECTORP)
_OP_DEF(opexe_3, "eq?",												2,  2,			TST_ANY,								OP_EQ)
_OP_DEF(opexe_3, "eqv?",												2,  2,			TST_ANY,								OP_EQV)
_OP_DEF(opexe_4, "force",											1,  1,			TST_ANY,								OP_FORCE)
_OP_DEF(opexe_4, 0,														0,  0,			0,											OP_SAVE_FORCED)
_OP_DEF(opexe_4, "write",												1,  2,			TST_ANY TST_OUTPORT,		OP_WRITE)
_OP_DEF(opexe_4, "write-char",										1,  2,			TST_CHAR TST_OUTPORT,		OP_WRITE_CHAR)
_OP_DEF(opexe_4, "display",											1,  2,			TST_ANY TST_OUTPORT,		OP_DISPLAY)
_OP_DEF(opexe_4, "newline",										0,  1,			TST_OUTPORT,						OP_NEWLINE)
_OP_DEF(opexe_4, "error",												1,  0xFFFF, TST_NONE,					OP_ERR0)
_OP_DEF(opexe_4, 0,														0,  0,			0,											OP_ERR1)
_OP_DEF(opexe_4, "reverse",											1,  1,			TST_LIST,								OP_REVERSE)
_OP_DEF(opexe_4, "list*",												1,  0xFFFF, TST_NONE,					OP_LIST_STAR)
_OP_DEF(opexe_4, "append",											0,  0xFFFF, TST_NONE,					OP_APPEND)
_OP_DEF(opexe_4, "quit",												0,  1,			TST_NUMBER,						OP_QUIT)
_OP_DEF(opexe_4, "gc",													0,  0,			0,											OP_GC)
_OP_DEF(opexe_4, "gc-verbose",									0,  1,			TST_NONE,							OP_GCVERB)
_OP_DEF(opexe_4, "new-segment",								0,  1,			TST_NUMBER,						OP_NEWSEGMENT)
_OP_DEF(opexe_4, "oblist",											0,  0,			0,											OP_OBLIST)
_OP_DEF(opexe_4, "current-input-port",						0,  0,			0,											OP_CURR_INPORT)
_OP_DEF(opexe_4, "current-output-port",						0,	0,			0,											OP_CURR_OUTPORT)
_OP_DEF(opexe_4, "open-input-file",								1,	1,			TST_STRING,							OP_OPEN_INFILE)
_OP_DEF(opexe_4, "open-output-file",							1,	1,			TST_STRING,							OP_OPEN_OUTFILE)
_OP_DEF(opexe_4, "open-input-output-file",					1,	1,			TST_STRING,							OP_OPEN_INOUTFILE)
_OP_DEF(opexe_4, "open-input-string",							1,	1,			TST_STRING,							OP_OPEN_INSTRING)
_OP_DEF(opexe_4, "open-input-output-string",				1,	1,			TST_STRING,							OP_OPEN_INOUTSTRING)
_OP_DEF(opexe_4, "open-output-string",						0,	1,			TST_STRING,							OP_OPEN_OUTSTRING)
_OP_DEF(opexe_4, "get-output-string",							1,  1,			TST_OUTPORT,						OP_GET_OUTSTRING)
_OP_DEF(opexe_4, "close-input-port",							1,  1,			TST_INPORT,							OP_CLOSE_INPORT)
_OP_DEF(opexe_4, "close-output-port",							1,  1,			TST_OUTPORT,						OP_CLOSE_OUTPORT)
_OP_DEF(opexe_4, "interaction-environment",				0,  0,			0,											OP_INT_ENV)
_OP_DEF(opexe_4, "current-environment",					0,  0,			0,											OP_CURR_ENV)
_OP_DEF(opexe_5, "read",												0,  1,			TST_INPORT,							OP_READ)
_OP_DEF(opexe_5, "read-char",										0,  1,			TST_INPORT,							OP_READ_CHAR)
_OP_DEF(opexe_5, "peek-char",										0,  1,			TST_INPORT,							OP_PEEK_CHAR)
_OP_DEF(opexe_5, "char-ready?",									0,  1,			TST_INPORT,							OP_CHAR_READY)
_OP_DEF(opexe_5, "set-input-port",								1,  1,			TST_INPORT,							OP_SET_INPORT)
_OP_DEF(opexe_5, "set-output-port",							1,  1,			TST_OUTPORT,						OP_SET_OUTPORT)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_RDSEXPR)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_RDLIST)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_RDDOT)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_RDQUOTE)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_RDQQUOTE)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_RDQQUOTEVEC)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_RDUNQUOTE)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_RDUQTSP)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_RDVEC)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_P0LIST)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_P1LIST)
_OP_DEF(opexe_5, 0,														0,  0,			0,											OP_PVECFROM)
_OP_DEF(opexe_6, "length",											1,  1,			TST_LIST,								OP_LIST_LENGTH)
_OP_DEF(opexe_6, "assq",												2,  2,			TST_NONE,							OP_ASSQ)
_OP_DEF(opexe_6, "get-closure-code",							1,  1,			TST_NONE,							OP_GET_CLOSURE)
_OP_DEF(opexe_6, "closure?",										1,  1,			TST_NONE,							OP_CLOSUREP)
_OP_DEF(opexe_6, "macro?",											1,  1,			TST_NONE,							OP_MACROP)
#undef _OP_DEF
